package xjtu.sad.zbsj.service.impl;

import org.springframework.stereotype.Service;
import xjtu.sad.zbsj.dao.task.TMarkDao;
import xjtu.sad.zbsj.entity.TMark;
import xjtu.sad.zbsj.service.TMarkService;

import javax.annotation.Resource;
import java.util.List;

/**
 * 用户标注情况表(TMark)表服务实现类
 *
 * @author makejava
 * @since 2021-12-03 23:54:56
 */
@Service("tMarkService")
public class TMarkServiceImpl implements TMarkService {
    @Resource
    private TMarkDao tMarkDao;

    /**
     * 通过ID查询单条数据
     *
     * @param markId 主键
     * @return 实例对象
     */
    @Override
    public TMark queryById(Integer markId) {
        return this.tMarkDao.queryById(markId);
    }

    @Override
    public List<TMark> queryByDrawId(Integer drawId) {
        return tMarkDao.queryByDrawId(drawId);
    }

    @Override
    public List<TMark> queryByDrawIdStatus(Integer drawId, String status) {
        return tMarkDao.queryByDrawIdStatus(drawId,status);
    }

    /**
     * 查询多条数据
     *
     * @param offset 查询起始位置
     * @param limit 查询条数
     * @return 对象列表
     */
    @Override
    public List<TMark> queryAllByLimit(int offset, int limit) {
        return this.tMarkDao.queryAllByLimit(offset, limit);
    }

    /**
     * 新增数据
     *
     * @param tMark 实例对象
     * @return 实例对象
     */
    @Override
    public TMark insert(TMark tMark) {
        this.tMarkDao.insert(tMark);
        return tMark;
    }

    /**
     * 修改数据
     *
     * @param tMark 实例对象
     * @return 实例对象
     */
    @Override
    public TMark update(TMark tMark) {
        this.tMarkDao.update(tMark);
        return this.queryById(tMark.getMarkId());
    }

    /**
     * 通过主键删除数据
     *
     * @param markId 主键
     * @return 是否成功
     */
    @Override
    public boolean deleteById(Integer markId) {
        return this.tMarkDao.deleteById(markId) > 0;
    }
}
